<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Bid extends CI_Controller 
{
    private $_data = '';
  
    public function __construct()
    {
        parent::__construct();
        $this->load->model('usermodel');
        $this->load->model('bid_model');
        $this->load->model('auction_model');
    }
    
	public function index()
	{
	    $this->load->helper('time');
	    
	    $data = array();
	    
	    $max_point = $this->auction_model->getMaxPointGroupByType();
	    $data['check_types'] = $this->bid_model->getAllBidByUserId($_SESSION['userLoggedIn']['id']);
//	    
//	    echo '<pre>';
//	    var_dump($data['check_types']);die;
	    
	    foreach ($max_point as $_max_point) {
	        $data['max_point'][$_max_point['type_catalog']] = $_max_point['point'];
	    }
	    
	    
        $this->_data['content'] = $this->load->view('bid/index', $data, TRUE);
        $this->load->view('layout/frontend/index', $this->_data);
	}
	
	public function add($type = NULL)
	{
	    $duration_time = (int) $_POST['week'];
	    $user_id = $_SESSION['userLoggedIn']['id'];
	    $point = $_SESSION['userLoggedIn']['point'];
	    if ($type == 1 || $type == 2 || $type == 3 ) {
	        $price = $duration_time * 300;
	    } else if ($type == 4) {
	        $price = $duration_time * 600;
	    } else if ($type == 5) {
	        $price = $duration_time * 500;
	    } else if ($type == 6) {
	        $price = $duration_time * 400;
	    }
	    
	    $data = array(
	        'user_id' => $user_id,
	        'duration_time' => $duration_time,
	        'type_catalog' => (int) $type,
	    );

	    if ($point > $price) {
    	    $_SESSION['userLoggedIn']['point'] -= $price;
    	    $this->usermodel->update($user_id, array('point' => $_SESSION['userLoggedIn']['point']));
    	    
    	    $this->bid_model->add($data);
    	  
            $this->session->set_flashdata('message', 'Đã bid thành công!');
	    } else {
	      $this->session->set_flashdata('message', 'Bạn không đủ điểm để bid!');
	    }
	    
        redirect('bid/index');
	}
	
	public function auction($type = NULL)
	{
	    $user_id = $_SESSION['userLoggedIn']['id'];
	    $bid_value = (int) $_POST['bid_value'];
	    
	    $max_point = $this->auction_model->getMaxPointGroupByType();
	    
	    foreach ($max_point as $_max_point) {
	      $data['max_point'][$_max_point['type_catalog']] = $_max_point['point'];
	    }
	    
	    if ($bid_value > $data['max_point'][$type]) {
    	    $data = array(
    	        'user_id' => $user_id,
    	        'point' => $bid_value,
    	        'type_catalog' => (int) $type,
    	    );
	    
	        $this->auction_model->add($data);
	        $this->session->set_flashdata('message', 'Đã đấu giá thành công!');
	    } else {
	        $this->session->set_flashdata('message', 'Giá bạn đưa ra là thấp hơn giá hiện tại!');
	    }
	    
	    redirect('bid/index');
	}
}